Registrazione di una risorsa come istanza di servizio AWS Cloud Map - AWS Cloud Map

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Registrazione di una risorsa come istanza di servizio AWS Cloud Map

È possibile registrare le risorse dell'applicazione come istanze in un AWS Cloud Map servizio. Ad esempio, supponiamo di aver creato un servizio chiamato users per tutte le risorse dell'applicazione che gestiscono i dati degli utenti. È quindi possibile registrare una tabella DynamoDB utilizzata per archiviare i dati utente come istanza in questo servizio.

Nota

Le seguenti funzionalità non sono disponibili sulla AWS Cloud Map console:

  • Quando registri un'istanza di servizio utilizzando la console, non puoi creare un record di alias che indirizza il traffico verso un sistema di bilanciamento del carico Elastic Load Balancing ELB (). Quando si registra un'istanza, è necessario includere l'attributo AWS_ALIAS_DNS_NAME. Per ulteriori informazioni, consulta la sezione Reference RegisterInstance.AWS Cloud Map API

  • Se si registra un'istanza che utilizza un servizio che include un controllo dello stato personalizzato, non è possibile specificare lo stato iniziale del controllo di stato personalizzato. Per impostazione predefinita, lo stato iniziale per i controlli di stato personalizzati è Healthy (Integro). Se si desidera impostare lo stato iniziale su Unhealthy (Non integro), registrare l'istanza in modo programamtico e includere lattributo AWS_INIT_HEALTH_STATUS. Per ulteriori informazioni, vedere RegisterInstancenel AWS Cloud Map APIReference.

Per registrare un'istanza in un servizio, segui questi passaggi.

AWS Management Console
  1. Accedi AWS Management Console e apri la AWS Cloud Map console all'indirizzo https://console.aws.amazon.com/cloudmap/.

  2. Nel riquadro di navigazione seleziona Namespaces (Spazio dei nomi).

  3. Nella pagina Namespaces (Spazi dei nomi), scegliere lo spazio dei nomi che contiene il servizio che si desidera utilizzare come modello per registrare l'istanza di un servizio.

  4. Nel Namespace: namespace-namenella pagina, scegli il servizio che desideri utilizzare.

  5. Sul servizio: service-namenella pagina, scegli Registra istanza del servizio.

  6. Nella pagina Registra istanza del servizio, scegli un tipo di istanza. A seconda della configurazione del namespace Instance Discovery, puoi scegliere di specificare un indirizzo IP, un ID di EC2 istanza Amazon o altre informazioni identificative per una risorsa che non dispone di un indirizzo IP.

    Nota

    Puoi scegliere l'EC2istanza solo nei HTTP namespace.

  7. Per Service Instance ID, fornisci un identificatore associato all'istanza del servizio.

    Nota

    Se desideri aggiornare un'istanza esistente, fornisci l'identificatore associato all'istanza che desideri aggiornare. Quindi, utilizza i passaggi successivi per aggiornare i valori e registrare nuovamente l'istanza.

  8. In base al tipo di istanza scelto, esegui i seguenti passaggi.

    Tipo di istanza Fasi

    Indirizzo IP

    1. In Attributi standard, per IPv4indirizzo, fornisci un IPv4 indirizzo, se disponibile, a cui l'applicazione può accedere alla risorsa associata a questa istanza di servizio.

    2. Per IPv6l'indirizzo, fornisci un indirizzo IPv6 IP, se disponibile, a cui le applicazioni possono accedere alla risorsa associata a questa istanza di servizio.

    3. Per Porta, specifica qualsiasi porta che l'applicazione deve includere per accedere alla risorsa associata a questa istanza di servizio. La porta è richiesta quando il servizio include un SRV record o un controllo dello stato di Amazon Route 53.

    4. (Facoltativo) In Attributi personalizzati, specifica le coppie chiave-valore che desideri associare alla risorsa.

    EC2istanza
    1. Ad EC2esempio ID, seleziona l'ID dell'EC2istanza Amazon che desideri registrare come istanza di AWS Cloud Map servizio.

    2. (Facoltativo) In Attributi personalizzati, specifica le coppie chiave-valore che desideri associare alla risorsa.

    Informazioni di identificazione per un'altra risorsa
    1. In Attributi standard, se la configurazione del servizio include un CNAMEDNSrecord, vedrai un CNAMEcampo. Per CNAME, specifica il nome di dominio che desideri che Route 53 restituisca in risposta alle DNS domande (ad esempio,example.com).

    2. In Attributi personalizzati, specifica qualsiasi informazione identificativa per una risorsa che non sia un indirizzo IP o un ID di EC2 istanza Amazon come coppia chiave-valore. Ad esempio, è possibile registrare una funzione Lambda specificando una chiave chiamata function e fornendo il nome della funzione Lambda come valore. È inoltre possibile specificare una chiave chiamata name e fornire un nome da utilizzare per il rilevamento programmatico delle istanze.

  9. Selezionare Register service instance (Registra istanza del servizio).

AWS CLI
  • Quando invii una RegisterInstance richiesta:

    • Per ogni DNS record definito nel servizio specificato daServiceId, viene creato o aggiornato un record nella zona ospitata associata allo spazio dei nomi corrispondente.

    • Se il servizio includeHealthCheckConfig, viene creato un controllo dello stato di salute in base alle impostazioni nella configurazione del controllo dello stato.

    • Tutti i controlli sanitari sono associati a ciascuno dei record nuovi o aggiornati.

    Registra un'istanza di servizio con il register-instance comando (sostituisci il red valori con i tuoi).

    aws servicediscovery register-instance \ --service-id srv-xxxxxxxxx \ --instance-id myservice-xx \ --attributes=AWS_INSTANCE_IPV4=172.2.1.3,AWS_INSTANCE_PORT=808
AWS SDK for Python (Boto3)
  1. Se non l'hai ancora Boto3 installato, puoi trovare le istruzioni per l'installazione, la configurazione e l'utilizzo Boto3 qui.

  2. Importa Boto3 e usa servicediscovery come servizio.

    import boto3 client = boto3.client('servicediscovery')
  3. Quando invii una RegisterInstance richiesta:

    • Per ogni DNS record definito nel servizio specificato daServiceId, viene creato o aggiornato un record nella zona ospitata associata allo spazio dei nomi corrispondente.

    • Se il servizio includeHealthCheckConfig, viene creato un controllo dello stato di salute in base alle impostazioni nella configurazione del controllo dello stato.

    • Tutti i controlli sanitari sono associati a ciascuno dei record nuovi o aggiornati.

    Registra un'istanza di servizio con register_instance() (sostituisci il red valori con i tuoi).

    response = client.register_instance( Attributes={ 'AWS_INSTANCE_IPV4': '172.2.1.3', 'AWS_INSTANCE_PORT': '808', }, InstanceId='myservice-xx', ServiceId='srv-xxxxxxxxx', ) # If you want to see the response print(response)

    Esempio di output di risposta

    { 'OperationId': '4yejorelbukcjzpnr6tlmrghsjwpngf4-k95yg2u7', 'ResponseMetadata': { '...': '...', }, }