Condividi tramite


Caricare i dati di utilizzo in Azure in modalità indiretta

Periodicamente, è possibile esportare le informazioni sull'utilizzo. L'esportazione e il caricamento di queste informazioni creano e aggiornano anche il controller dati, l'istanza gestita di SQL e le risorse PostgreSQL in Azure.

Nota

Le informazioni sull'utilizzo vengono caricate automaticamente per il controller dei dati di Azure Arc distribuito in modalità di connessione diretta. Le istruzioni contenute in questo articolo si applicano solo al caricamento delle informazioni sull'utilizzo per il controller dei dati di Azure Arc distribuito in modalità di connessione indiretta.

Attendere almeno 24 ore dopo la creazione del controller dei dati di Azure Arc prima di caricare i dati di utilizzo.

Creare un'entità servizio e assegnare ruoli

Prima di procedere, assicurarsi di aver creato l'entità servizio richiesta e di assegnarla a un ruolo appropriato. Per informazioni dettagliate, vedere:

Gli esempi in questo articolo usano parentesi angolari < ... > per identificare i valori che è necessario sostituire prima di eseguire lo script. Sostituire le parentesi quadre e i valori all'interno delle parentesi quadre.

Caricare i dati di utilizzo

Le informazioni sull'utilizzo, ad esempio l'inventario e l'utilizzo delle risorse, possono essere caricate in Azure nel modo seguente in due passaggi:

  1. Esportare i dati di utilizzo usando il comando az arcdata dc export, come indicato di seguito:

Nota

L'esportazione di informazioni di utilizzo/fatturazione, metriche e log usando il comando az arcdata dc export al momento richiede di ignorare la verifica SSL. Verrà richiesto di ignorare la verifica SSL oppure impostare la variabile di ambiente AZDATA_VERIFY_SSL=no per evitare la richiesta. Attualmente non è possibile configurare un certificato SSL per l'API di esportazione del controller dei dati.

az arcdata dc export --type usage --path usage.json --k8s-namespace <namespace> --use-k8s

Questo comando crea un file usage.json con tutte le risorse dati abilitate per Azure Arc, ad esempio istanze gestite di SQL e istanze PostgreSQL e così via, create nel controller dei dati.

Per il momento, il file non è crittografato in modo che sia possibile visualizzarne il contenuto. È possibile aprire in un editor di testo e visualizzare il contenuto.

Si noterà che sono presenti due set di dati: resources e data. Il set di dati resources include il controller dei dati, le istanze PostgreSQL e i servizi Istanza gestita di SQL. I record resources nei dati riflettono gli eventi pertinenti nella cronologia di una risorsa, ovvero quando sono stati creati, quando sono stati aggiornati e quando sono stati eliminati. I record data riflettono il numero di core disponibili per l'uso da parte di una determinata istanza per ogni ora.

Esempio di voce resource:

    {
        "customObjectName": "<resource type>-2020-29-5-23-13-17-164711",
        "uid": "4bc3dc6b-9148-4c7a-b7dc-01afc1ef5373",
        "instanceName": "sqlInstance001",
        "instanceNamespace": "arc",
        "instanceType": "<resource>",
        "location": "eastus",
        "resourceGroupName": "production-resources",
        "subscriptionId": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
        "isDeleted": false,
        "externalEndpoint": "32.191.39.83:1433",
        "vCores": "2",
        "createTimestamp": "05/29/2020 23:13:17",
        "updateTimestamp": "05/29/2020 23:13:17"
    }

Esempio di voce data:

        {
          "requestType": "usageUpload",
          "clusterId": "4b0917dd-e003-480e-ae74-1a8bb5e36b5d",
          "name": "DataControllerTestName",
          "subscriptionId": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
          "resourceGroup": "production-resources",
          "location": "eastus",
          "uploadRequest": {
            "exportType": "usages",
            "dataTimestamp": "2020-06-17T22:32:24Z",
            "data": "[{\"name\":\"sqlInstance001\",
                       \"namespace\":\"arc\",
                       \"type\":\"<resource type>\",
                       \"eventSequence\":1, 
                       \"eventId\":\"50DF90E8-FC2C-4BBF-B245-CB20DC97FF24\",
                       \"startTime\":\"2020-06-17T19:11:47.7533333\",
                       \"endTime\":\"2020-06-17T19:59:00\",
                       \"quantity\":1,
                       \"id\":\"4BC3DC6B-9148-4C7A-B7DC-01AFC1EF5373\"}]",
           "signature":"MIIE7gYJKoZIhvcNAQ...2xXqkK"
          }
        }
  1. Caricare i dati di utilizzo usando il comando upload.

    az arcdata dc upload --path usage.json
    

Frequenza di caricamento

Nella modalità indiretta, le informazioni sull'utilizzo devono essere caricate in Azure almeno una volta ogni 30 giorni. È consigliabile eseguire il caricamento più frequentemente, ad esempio ogni giorno. Se le informazioni sull'utilizzo non vengono caricate negli ultimi 32 giorni, si noterà una riduzione delle prestazioni del servizio, ad esempio l'impossibilità di effettuare il provisioning di nuove risorse.

Ci saranno due tipi di notifiche per i caricamenti di utilizzo in ritardo: fase di avviso e fase di riduzione delle prestazioni. Nella fase di avviso verrà visualizzato un messaggio simile al seguente: Billing data for the Azure Arc data controller has not been uploaded in {0} hours. Please upload billing data as soon as possible..

Nella fase di riduzione delle prestazioni il messaggio sarà simile al seguente: Billing data for the Azure Arc data controller has not been uploaded in {0} hours. Some functionality will not be available until the billing data is uploaded..

Nota

Il messaggio di avviso verrà visualizzato se l'utilizzo non è stato caricato per più di 48 ore.

Nel portale di Azure la pagina Informazioni generali relativa al controller dei dati e lo stato della risorsa personalizzata del controller dei dati nel cluster Kubernetes indicheranno sia l'ultima data di caricamento che i messaggi di stato.

Automazione dei caricamenti (facoltativo)

Per caricare metriche e log in base a una pianificazione, è possibile creare uno script ed eseguirlo in un timer ogni pochi minuti. Di seguito è riportato un esempio di automazione dei caricamenti usando uno script della shell Linux.

Nell'editor di testo/codice preferito aggiungere lo script seguente al file e salvare come file eseguibile di script, ad esempio .sh (Linux/Mac), .cmd, .bat o .ps1.

az arcdata dc export --type usage --path usage.json --force --k8s-namespace <namespace> --use-k8s
az arcdata dc upload --path usage.json

Rendere eseguibile il file di script

chmod +x myuploadscript.sh

Eseguire lo script ogni giorno per i dati di utilizzo:

watch -n 1200 ./myuploadscript.sh

È anche possibile usare un'utilità di pianificazione dei processi come Cron o Utilità di pianificazione di Windows o un agente di orchestrazione come Ansible, Puppet o Chef.

Caricare metriche e log in Monitoraggio di Azure

Caricare i log in Monitoraggio di Azure

Caricare i dati di fatturazione in Azure e visualizzarli nel portale di Azure

Visualizzare la risorsa del controller dei dati di Azure Arc nel portale di Azure