Monitoraggio dello stato di integrità
Le istanze di blocchi note gestiti dall'utente forniscono diversi metodi per monitorare l'integrità dei tuoi blocchi note. Questa pagina descrive come utilizzare ciascun metodo.
Metodi per il monitoraggio dello stato di integrità
Puoi monitorare l'integrità delle istanze di notebook gestite dall'utente in diversi modi. Questa pagina descrive come utilizzare i seguenti metodi:
Configura gcloud CLI
Per completare alcuni dei passaggi indicati in questa pagina, devi utilizzare Google Cloud CLI.Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Utilizzare gli attributi guest per segnalare l'integrità del sistema
Puoi utilizzare gli attributi guest per segnalare lo stato di salute del sistema dei seguenti servizi di base:
- Servizio Docker
- Agente di reverse proxy Docker
- Servizio Jupyter
- API Jupyter
Gli attributi guest sono un tipo specifico di metadati personalizzati su cui le applicazioni possono scrivere durante l'esecuzione nell'istanza di Notebook gestita dall'utente. Per scoprire di più sugli attributi guest, consulta Informazioni sui metadati della VM.
In che modo le istanze utilizzano gli attributi guest per segnalare l'integrità del sistema
Il servizio notebooks-collection-agent
esegue un processo Python
in background che verifica lo stato dei servizi principali dell'istanza di notebook gestiti dall'utente e aggiorna gli attributi guest come
1
se non vengono rilevati problemi o -1
se viene rilevato un errore.
Per utilizzare il servizio notebooks-collection-agent
per
sull'integrità della tua istanza
di blocchi note gestiti dall'utente,
devi attivare i seguenti attributi guest mentre
creando un'istanza di blocchi note gestiti dall'utente:
enable-guest-attributes=TRUE
: consente agli ospiti sulla tua istanza di blocchi note gestiti dall'utente. Tutti nuovi istanze abilitano questo attributo per impostazione predefinita.report-system-health=TRUE
: questo sistema di registrazione i risultati del controllo di integrità in base agli attributi degli ospiti.
Il servizio notebooks-collection-agent
non ha bisogno
eventuali autorizzazioni speciali per scrivere negli attributi guest dell'istanza.
Crea un'istanza di blocchi note gestiti dall'utente con attributi guest dell'integrità del sistema abilitati
Per utilizzare gli attributi guest dell'integrità del sistema per segnalare sull'integrità della tua istanza di blocchi note gestiti dall'utente, devi selezionare la casella di controllo Abilita report sull'integrità del sistema quando crei per un'istanza di blocchi note gestiti dall'utente.
Puoi attivare il report sullo stato di integrità del sistema utilizzando la console Google Cloud o Google Cloud CLI.
Prima di iniziare
Prima di poter creare un'istanza di notebook gestita dall'utente, devi avere un progetto Google Cloud e abilitare l'API Notebooks per quel progetto.- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Notebooks API.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Notebooks API.
- Se prevedi di utilizzare GPU con la tua istanza di notebook gestita dall'utente, controlla la pagina Quote in Google Cloud Console per assicurarti di disporre di un numero sufficiente di GPU nel progetto. Se le GPU non sono elencati nella pagina delle quote o hai bisogno di una quota GPU aggiuntiva, puoi richiedere un aumento della quota. Consulta la sezione Richiedere un aumento della quota nella pagina Quote delle risorse di Compute Engine.
Ruoli obbligatori
Se hai creato tu il progetto, hai
Ruolo IAM del proprietario (roles/owner
) nel progetto,
che include tutte le autorizzazioni richieste. Salta questa sezione e
per iniziare a creare l'istanza
di blocchi note gestiti dall'utente. Se non lo hai fatto
creare il progetto autonomamente, continua in questa sezione.
Per assicurarti che il tuo account utente disponga degli le autorizzazioni per creare un'istanza di blocchi note gestiti dall'utente di Vertex AI Workbench, chiedi all'amministratore di concedere al tuo account utente la seguenti ruoli IAM sul progetto:
-
Amministratore Notebooks (
roles/notebooks.admin
) -
Utente dell'account di servizio (
roles/iam.serviceAccountUser
)
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.
L'amministratore potrebbe anche essere in grado di fornire il tuo account utente le autorizzazioni richieste tramite la ruoli o altri ruoli predefiniti ruoli.
Crea l'istanza
Console
Nella console Google Cloud, vai alla pagina Notebook gestiti dall'utente. In alternativa, vai all'indirizzo notebook.new (https://notebook.new) e salta il passaggio successivo.
Fai clic su
Nuovo blocco note, quindi seleziona Personalizza.Nella pagina Crea un blocco note gestito dall'utente, nella sezione Dettagli, fornisci le seguenti informazioni per la nuova istanza:
- Nome: un nome per la nuova istanza
- Regione e Zona. Seleziona una regione e una zona per la nuova istanza. Per ottenere le migliori prestazioni della rete, seleziona la regione geograficamente più vicina a te. Consulta le località dei blocchi note gestiti dall'utente disponibili.
Seleziona la sezione Stato di salute del sistema.
Nella sezione Integrità del sistema e report, seleziona la casella di controllo Attiva report sull'integrità del sistema.
Completa il resto della finestra di dialogo per la creazione dell'istanza e fai clic su Crea.
gcloud
Da Cloud Shell o da qualsiasi ambiente in cui è installato Google Cloud CLI, inserisci il seguente comando Google Cloud CLI:
gcloud notebooks instances create INSTANCE_NAME \ --vm-image-project=deeplearning-platform-release \ --vm-image-family=IMAGE_FAMILY \ --machine-type=MACHINE_TYPE \ --location=ZONE \ --metadata=enable-guest-attributes=TRUE,report-system-health=TRUE
Sostituisci quanto segue:
INSTANCE_NAME
: il nome del nuovo istanzaIMAGE_FAMILY
: il nome della famiglia di immagini che vuoi utilizzare per creare l'istanzaMACHINE_TYPE
: il tipo di macchina della VM dell'istanza; ad esempio,n1-standard-4
ZONE
: la zona in cui vuoi che si trovi la nuova istanza, ad esempious-west1-a
Accedi all'istanza da nella console Google Cloud.
Monitora l'integrità del sistema tramite gli attributi guest
Per le istanze di notebook gestite dall'utente per le quali sono abilitati gli attributi guest correlati, puoi recuperare i valori degli attributi guest relativi allo stato del sistema utilizzando la console Google Cloud, Google Cloud CLI con i comandi Compute Engine o Google Cloud CLI con i comandi Vertex AI Workbench.
Console
Nella console Google Cloud, vai alla pagina Blocchi note gestiti dall'utente.
Fai clic sul nome dell'istanza di cui vuoi visualizzare lo stato di integrità del sistema.
Nella pagina Dettagli notebook, fai clic sulla scheda Stato. Rivedi lo stato dell'istanza e dei suoi servizi principali.
gcloud con Compute Engine
gcloud compute instances get-guest-attributes INSTANCE_NAME \
--zone ZONE
Sostituisci quanto segue:
INSTANCE_NAME
: il nome dell'istanzaZONE
: la zona in cui si trova l'istanza
Se i servizi principali sono operativi, i risultati sono simili a quelli riportati di seguito.
Il valore 1
indica che non è stato rilevato alcun errore.
NAMESPACE KEY VALUE
notebooks docker_proxy_agent_status 1
notebooks docker_status 1
notebooks jupyterlab_api_status 1
notebooks jupyterlab_status 1
notebooks system-health 1
notebooks updated 2020-10-01 17:00:00.12345
Se uno dei quattro servizi principali non funziona, lo stato di salute del sistema riporta un valore -1
per indicare l'errore del sistema. Nella maggior parte dei casi,
un errore di sistema significa che JupyterLab non è accessibile.
Un esempio di risultato di errore potrebbe essere il seguente.
NAMESPACE KEY VALUE
notebooks docker_proxy_agent_status -1
notebooks docker_status -1
notebooks jupyterlab_api_status 1
notebooks jupyterlab_status 1
notebooks system-health -1
notebooks updated 2020-10-01 17:00:00.12345
gcloud con Vertex AI Workbench
Per monitorare l'integrità del sistema, puoi utilizzare getInstanceHealth per recuperare i valori degli attributi guest.
L'esempio seguente mostra come eseguire questa operazione utilizzando l'interfaccia a riga di comando gcloud.
gcloud notebooks instances is-healthy example-instance \
--location=ZONE
Sostituisci ZONE
con la zona in cui è presente l'istanza
situato, ad esempio us-west1-a
.
Se i servizi principali sono integri, i risultati saranno simili ai seguenti.
Un valore pari a 1
indica che non è stato rilevato alcun errore.
{ "health_state": HEALTHY, "docker-proxy-agent": 1, "docker-service": 1, "jupyter-service": 1, "jupyter-api": 1, "last-updated": "2020-10-01 17:00:30.12345" }
Un esempio di risultato di errore potrebbe essere il seguente.
{ "healthy": UNHEALTHY, "docker-proxy-agent": 1, "docker-service": 1, "jupyter-service": -1, "jupyter-api": -1, "last-updated": "2020-10-01 17:00:30.12345" }
Segnala metriche personalizzate a Monitoring
Le istanze di blocchi note gestite dall'utente ti consentono di raccogliere le metriche JupyterLab e quelle relative allo stato del sistema e di segnalarle a Cloud Monitoring. Queste metriche personalizzate sono diverse da quelle standard registrate quando installi Monitoring nell'istanza di Notebook gestita dall'utente.
Le metriche personalizzate registrate in Monitoring includono:
L'integrità del sistema di questi servizi principali dei blocchi note gestiti dall'utente:
- Servizio Docker
- Agente di reverse proxy Docker
- Servizio Jupyter
- API Jupyter
Le seguenti metriche JupyterLab:
- Numero di kernel
- Numero di terminali
- Numero di connessioni
- Numero di sessioni
- Memoria massima
- Con memoria elevata
- Memoria attuale
In che modo le istanze segnalano metriche personalizzate a Monitoring
Per generare report sulle metriche personalizzate in Monitoraggio, devi attivare l'impostazione dei metadati report-notebook-metrics
durante la creazione di un'istanza di notebook gestita dall'utente.
Devi inoltre assicurarti che
i blocchi note gestiti dall'utente
account di servizio dell'istanza
ha un Writer metriche Monitoring (roles/monitoring.metricWriter
)
autorizzazioni aggiuntive. Per saperne di più, consulta
Gestire l'accesso a progetti, cartelle e organizzazioni.
Crea un'istanza di notebook gestiti dall'utente che registri metriche personalizzate in Monitoring
Per segnalare le metriche personalizzate a Monitoring, devi selezionare la casella di controllo Segnala metriche personalizzate a Cloud Monitoring quando crei un'istanza di Notebook gestita dall'utente.
Puoi attivare la generazione di report sulle metriche personalizzate in Cloud Monitoring utilizzando la console Google Cloud o Google Cloud CLI.
Prima di iniziare
Prima di poter creare un'istanza di blocchi note gestiti dall'utente, devi avere un progetto Google Cloud e abilita l'API Notebooks per quel progetto.- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Notebooks API.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Notebooks API.
- Se prevedi di utilizzare GPU con di blocchi note gestiti dall'utente, verifica la pagina delle quote nella Console Google Cloud per assicurarti di avere a disposizione un numero sufficiente di GPU nel progetto. Se le GPU non sono elencati nella pagina delle quote o hai bisogno di una quota GPU aggiuntiva, puoi richiedere un aumento della quota. Consulta la sezione Richiesta di un aumento della quota sulla alla pagina Quote delle risorse di Compute Engine.
Ruoli obbligatori
Se hai creato tu il progetto, hai
Ruolo IAM del proprietario (roles/owner
) nel progetto,
che include tutte le autorizzazioni richieste. Salta questa sezione e
per iniziare a creare l'istanza
di blocchi note gestiti dall'utente. Se non lo hai fatto
creare il progetto autonomamente, continua in questa sezione.
Per assicurarti che il tuo account utente disponga degli le autorizzazioni per creare un'istanza di blocchi note gestiti dall'utente di Vertex AI Workbench, chiedi all'amministratore di concedere al tuo account utente la seguenti ruoli IAM sul progetto:
-
Amministratore Notebooks (
roles/notebooks.admin
) -
Utente account di servizio (
roles/iam.serviceAccountUser
)
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.
L'amministratore potrebbe anche assegnare al tuo account utente le autorizzazioni richieste tramite ruoli personalizzati o altri ruoli predefiniti.
Crea l'istanza
Console
Nella console Google Cloud, vai alla pagina Notebook gestiti dall'utente. In alternativa, vai all'indirizzo notebook.new (https://notebook.new) e salta il passaggio successivo.
Fai clic su
Nuovo blocco note. e seleziona Personalizza.Nella pagina Crea un blocco note gestito dall'utente, nella sezione Dettagli, fornisci le seguenti informazioni per la nuova istanza:
- Nome: un nome per la nuova istanza
- Regione e Zona: seleziona una regione e una zona per la nuova istanza. Per ottenere le migliori prestazioni di rete, seleziona la regione geograficamente più vicina a te. Vedi i blocchi note gestiti dall'utente disponibili di località.
Seleziona la sezione Stato di salute del sistema.
Nella sezione Integrità del sistema e report, seleziona il Casella di controllo Segnala metriche personalizzate a Cloud Monitoring.
Completa la parte rimanente della finestra di dialogo di creazione dell'istanza e poi fai clic su Crea.
gcloud
Da Cloud Shell o in qualsiasi ambiente in cui è installata Google Cloud CLI, inserisci questo comando Google Cloud CLI:
gcloud notebooks instances create INSTANCE_NAME \ --vm-image-project=deeplearning-platform-release \ --vm-image-family=IMAGE_FAMILY \ --machine-type=MACHINE_TYPE \ --location=ZONE \ --metadata=report-notebook-metrics=TRUE
Sostituisci quanto segue:
INSTANCE_NAME
: il nome del nuovo istanzaIMAGE_FAMILY
: la famiglia di immagini nome che vuoi utilizzare per creare la tua istanzaMACHINE_TYPE
: il tipo di macchina della VM dell'istanza, ad esempion1-standard-4
ZONE
: la zona in cui vuoi che si trovi la nuova istanza, ad esempious-west1-a
Accedi all'istanza dalla console Google Cloud.
Concedi le autorizzazioni di autore di metriche di monitoraggio all'account di servizio
Dopo aver creato
la tua nuova istanza di blocchi note gestiti dall'utente,
concedi le autorizzazioni Writer metriche Monitoring
(roles/monitoring.metricWriter
) per
l'account di servizio
per l'istanza Notebooks gestiti dall'utente.
Per ulteriori informazioni, vedi
Gestire l'accesso a progetti, cartelle e organizzazioni.
Monitora le metriche personalizzate tramite Monitoring
Per le istanze di blocchi note gestiti dall'utente Avere attivato le metriche personalizzate per i report, puoi monitorare le metriche personalizzate utilizzando la console Google Cloud.
Nella console Google Cloud, vai alla pagina Blocchi note gestiti dall'utente.
Fai clic sul nome dell'istanza di cui vuoi visualizzare le metriche personalizzate.
Nella pagina Dettagli blocco note, fai clic sulla scheda Monitoring. Esamina le metriche personalizzate per la tua istanza.
Installa Monitoring su un'istanza
Questa opzione installa automaticamente Monitoring. L'installazione richiede 256 MB di spazio su disco. È necessaria una connessione a internet per la generazione di report sulle metriche in Monitoring.
Come le istanze segnalano metriche di sistema e di applicazione
Per segnalare metriche di sistema e delle applicazioni installando
Cloud Monitoring sull'istanza di blocchi note gestiti dall'utente
devi selezionare la casella di controllo Installa l'agente Cloud Monitoring quando crei
per un'istanza di blocchi note gestiti dall'utente.
Queste metriche sono diverse da quelle personalizzate che vengono segnalate quando
abiliti i metadati report-notebook-metrics
dell'audiodescrizione.
Creare un'istanza di blocchi note gestiti dall'utente che segnala le metriche di sistema e dell'applicazione a Monitoring
Per installare Monitoring sul tuo di blocchi note gestiti dall'utente, puoi utilizzare la console Google Cloud o Google Cloud CLI.
Prima di iniziare
Prima di poter creare un'istanza di notebook gestita dall'utente, devi avere un progetto Google Cloud e abilitare l'API Notebooks per quel progetto.- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Notebooks API.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Notebooks API.
- Se prevedi di utilizzare GPU con di blocchi note gestiti dall'utente, verifica la pagina delle quote nella Console Google Cloud per assicurarti di avere a disposizione un numero sufficiente di GPU nel progetto. Se le GPU non sono elencati nella pagina delle quote o hai bisogno di una quota GPU aggiuntiva, puoi richiedere un aumento della quota. Consulta la sezione Richiesta di un aumento della quota sulla alla pagina Quote delle risorse di Compute Engine.
Ruoli obbligatori
Se hai creato tu il progetto, hai
Ruolo IAM del proprietario (roles/owner
) nel progetto,
che include tutte le autorizzazioni richieste. Salta questa sezione e
per iniziare a creare l'istanza
di blocchi note gestiti dall'utente. Se non lo hai fatto
creare il progetto autonomamente, continua in questa sezione.
Per assicurarti che il tuo account utente disponga delle autorizzazioni necessarie per creare un'istanza di blocchi note gestiti dall'utente di Vertex AI Workbench, chiedi all'amministratore di concedere al tuo account utente i seguenti ruoli IAM sul progetto:
-
Amministratore Notebooks (
roles/notebooks.admin
) -
Utente dell'account di servizio (
roles/iam.serviceAccountUser
)
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.
L'amministratore potrebbe anche essere in grado di fornire il tuo account utente le autorizzazioni richieste tramite la ruoli o altri ruoli predefiniti ruoli.
Crea l'istanza
Console
Nella console Google Cloud, vai alla pagina Notebook gestiti dall'utente. Oppure vai a notebook.new (https://notebook.new) e salta il passaggio successivo.
Fai clic su
Nuovo blocco note. e seleziona Personalizza.Nella pagina Crea un blocco note gestito dall'utente, nella sezione Dettagli, fornisci le seguenti informazioni per la nuova istanza:
- Nome: un nome per la nuova istanza
- Regione e Zona: seleziona una regione e una zona per la nuova istanza. Per ottenere le migliori prestazioni di rete, seleziona la regione geograficamente più vicina a te. Vedi i blocchi note gestiti dall'utente disponibili di località.
Seleziona la sezione Stato di salute del sistema.
Nella sezione Integrità del sistema e report, seleziona il Casella di controllo Installa l'agente Cloud Monitoring.
Completa il resto della finestra di dialogo per la creazione dell'istanza e fai clic su Crea.
gcloud
Da Cloud Shell o da qualsiasi ambiente in cui è installato Google Cloud CLI, inserisci il seguente comando Google Cloud CLI:
gcloud notebooks instances create INSTANCE_NAME \ --vm-image-project=deeplearning-platform-release \ --vm-image-family=IMAGE_FAMILY \ --machine-type=MACHINE_TYPE \ --location=ZONE \ --metadata=install-monitoring-agent=TRUE
Sostituisci quanto segue:
INSTANCE_NAME
: il nome del nuovo istanzaIMAGE_FAMILY
: la famiglia di immagini nome che vuoi utilizzare per creare la tua istanzaMACHINE_TYPE
: il tipo di macchina della VM dell'istanza; ad esempio,n1-standard-4
ZONE
: la zona in cui in cui vuoi posizionare la nuova istanza ad esempious-west1-a
Accedi all'istanza dalla console Google Cloud.
Monitora le metriche di sistema e delle applicazioni tramite Monitoring
Per le istanze di blocchi note gestiti dall'utente Monitoring è installato, puoi monitorare le metriche di sistema e dell'applicazione utilizzando la console Google Cloud:
Nella console Google Cloud, vai alla pagina Notebook gestiti dall'utente.
Fai clic sul nome dell'istanza di cui vuoi visualizzare le metriche di sistema e di applicazione.
Nella pagina Dettagli notebook, fai clic sulla scheda Monitoraggio. Esamina le metriche di sistema e dell'applicazione per la tua istanza. Per scoprire come interpretare queste metriche, consulta Esaminare le metriche delle risorse.
Utilizza lo strumento di diagnostica per monitorare l'integrità del sistema
Le istanze di notebook gestite dall'utente includono un strumento di diagnostica integrato che può aiutarti a monitorare l'integrità del sistema delle tue istanze.
Attività eseguite dallo strumento di diagnostica
Lo strumento di diagnostica esegue le seguenti attività:
Verifica lo stato dei seguenti servizi principali dei notebook gestiti dall'utente:
- Servizio Docker
- Agente di reverse proxy Docker
- Servizio Jupyter
- API Jupyter
Controlla se lo spazio su disco per i dischi di avvio e dati viene utilizzato oltre una soglia dell'85%.
Installa
lsof
(è necessaria una connessione a internet).Raccoglie i seguenti log dell'istanza:
- Informazioni di rete (
ifconfig
,netstat
) - Log nella cartella
/var/log/
- Informazioni sullo stato di Docker
- Dati di
lsof
(file aperti) - Stato del servizio Docker
- Stato inversione agente proxy
- Stato del servizio Jupyter
- Stato dell'API Jupyter
- File di configurazione dell'agente proxy
- Processi Python
- Informazioni di rete (
Esegue i seguenti comandi e raccoglie i risultati:
- pip freeze
- elenco conda
- gcloud compute instances describe
INSTANCE_NAME
- gcloud config list
Esegui lo strumento di diagnostica
Per eseguire lo strumento di diagnostica, svolgi i seguenti passaggi:
Utilizza SSH per connetterti ai blocchi note gestiti dall'utente in esecuzione.
Nel terminale SSH, esegui questi comandi:
sudo -i cd /opt/deeplearning/bin/ ./diagnostic_tool.sh
Lo strumento di diagnostica raccoglie i log, le comprime in un file
.tar.gz
, e inserisce il file nella cartella/tmp/
.Estrai il file e valuta i contenuti. I contenuti includono:
- Cartella
log
: log da la cartellavar/log/
report.log
: output per tutti i comandi raccoltiproxy-agent-config.json
: Informazioni sulla configurazione del proxy- Log Docker: un file
-json.log
che include i log dei container Docker
- Cartella
Con lo strumento di diagnostica puoi utilizzare le seguenti opzioni.
Opzione | Descrizione |
---|---|
-r | Un'opzione di riparazione che tenta di ripristinare lo stato dei servizi principali non riusciti per i notebook gestiti dall'utente |
-s | Viene eseguito senza conferma |
-b |
Carica il file .tar.gz
in un bucket Cloud Storage.
|
-v | Un'opzione di debug per la risoluzione dei problemi dello strumento in caso di errori |
-c | Acquisisce 30 secondi di traffico dei pacchetti in dell'istanza di blocchi note gestiti dall'utente, filtrando SSH |
-d | Una cartella di destinazione in cui salvare i log |
-h | Guida |