Raccogli le metriche del server web Apache con Ops Agent

Scopri come raccogliere e monitorare le metriche da un server web Apache installato su un'istanza di macchina virtuale (VM) Compute Engine utilizzando Ops Agent:

  1. Crea un'istanza VM di Compute Engine e installa Ops Agent.
  2. Installare un server web Apache.
  3. Configura Ops Agent per il server web Apache.
  4. Genera traffico verso il server web Apache.
  5. Visualizza le metriche nella dashboard Apache predefinita.
  6. Crea un criterio di avviso.
  7. Esegui il test del criterio di avviso.
  8. Eseguire la pulizia.

Per seguire le indicazioni dettagliate per questa attività direttamente nella Google Cloud console, fai clic su Procedura guidata:

Procedura guidata


Prima di iniziare

  1. I vincoli di sicurezza definiti dalla tua organizzazione potrebbero impedirti di completare i passaggi seguenti. Per informazioni sulla risoluzione dei problemi, vedi Sviluppare applicazioni in un ambiente Google Cloud vincolato.

  2. 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.
  3. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  4. Make sure that billing is enabled for your Google Cloud project.

  5. Enable the Compute Engine, Cloud Monitoring, and Cloud Logging APIs.

    Enable the APIs

  6. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  7. Make sure that billing is enabled for your Google Cloud project.

  8. Enable the Compute Engine, Cloud Monitoring, and Cloud Logging APIs.

    Enable the APIs

  9. Crea un'istanza VM

    1. Nella console Google Cloud , vai alla pagina Istanze VM.

      Vai a Istanze VM

      Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Compute Engine.

    2. Crea una VM facendo clic su Crea istanza. Configura l'istanza utilizzando le opzioni nel menu di navigazione.
    3. Nell'opzione Configurazione macchina:
      1. Nel campo Nome, inserisci un nome descrittivo.
      2. Nel menu a discesa preimpostato Tipo di macchina, seleziona Con core condiviso > e2-small.
    4. Verifica che l'opzione Sistema operativo e spazio di archiviazione mostri Debian GNU/Linux. In caso contrario, fai clic sull'opzione Sistema operativo e spazio di archiviazione e poi su Cambia. Nella finestra di dialogo Disco di avvio, imposta Versione su Debian GNU/Linux.
    5. Nell'opzione Networking, per Firewall, seleziona Consenti traffico HTTP e Consenti traffico HTTPS.
    6. Verifica che l'opzione Osservabilità mostri Installa Ops Agent. In caso contrario, fai clic sull'opzione Osservabilità e seleziona Installa Ops Agent per il monitoraggio e il logging.
    7. Fai clic su Crea.

    Installare un server web Apache

    Per installare un server web Apache sull'istanza VM di Compute Engine:

    1. Nella pagina Istanze VM, individua la nuova VM, vai alla colonna Connetti e fai clic su SSH.

      Hai problemi con la connessione? Fai riferimento all'articolo Risoluzione dei problemi relativi a SSH.

    2. Per aggiornare gli elenchi di pacchetti, copia il seguente comando negli appunti, incollalo nel terminale SSH e premi Invio:

      sudo apt-get update
      
    3. Quando viene visualizzato il messaggio "Lettura degli elenchi dei pacchetti in corso... Fine", nel terminale SSH, esegui questo comando per installare un server web Apache2:

      sudo apt-get install apache2 php7.0
      

      Quando ti viene chiesto di continuare l'installazione, inserisci Y. Se il comando di installazione non va a buon fine, utilizza: sudo apt-get install apache2 php.

    4. Quando viene restituito il prompt dei comandi, vai alla pagina Istanze VM e copia l'indirizzo IP esterno della VM nel seguente URL:

      http://EXTERNAL_IP
      
    5. Per connetterti al server web Apache, apri una nuova scheda del browser e inserisci l'URL dal passaggio precedente.

      Una volta installato correttamente il server web, nella scheda del browser viene visualizzata la pagina predefinita di Apache2 Debian.

      Visualizza la pagina predefinita di Apache2.

    Raccogli i log e le metriche del server web Apache

    In questi passaggi, configuri Ops Agent per raccogliere log e metriche dal server web Apache:
    1. Vai al terminale SSH per l'istanza VM. Se non hai un terminale aperto, procedi nel seguente modo:

      1. Nella Google Cloud console, vai alla pagina Istanze VM.

        Vai a Istanze VM

        Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Compute Engine.

      2. Individua la nuova VM e fai clic su SSH.

    2. Copia il seguente comando, poi incollalo nel terminale per la tua istanza, quindi premi Invio:

      # Configures Ops Agent to collect telemetry from the app. You must restart the agent for the configuration to take effect.
      
      set -e
      
      # Check if the file exists
      if [ ! -f /etc/google-cloud-ops-agent/config.yaml ]; then
        # Create the file if it doesn't exist.
        sudo mkdir -p /etc/google-cloud-ops-agent
        sudo touch /etc/google-cloud-ops-agent/config.yaml
      fi
      
      # Create a back up of the existing file so existing configurations are not lost.
      sudo cp /etc/google-cloud-ops-agent/config.yaml /etc/google-cloud-ops-agent/config.yaml.bak
      
      # Configure the Ops Agent.
      sudo tee /etc/google-cloud-ops-agent/config.yaml > /dev/null << EOF
      metrics:
        receivers:
          apache:
            type: apache
        service:
          pipelines:
            apache:
              receivers:
                - apache
      logging:
        receivers:
          apache_access:
            type: apache_access
          apache_error:
            type: apache_error
        service:
          pipelines:
            apache:
              receivers:
                - apache_access
                - apache_error
      EOF
      

      Il comando precedente crea la configurazione per raccogliere e importare log e metriche dal server web Apache. Per maggiori informazioni, vedi Configura Ops Agent per il server web Apache.

    3. Riavvia Ops Agent:
      1. Per riavviare l'agente, esegui il seguente comando sull'istanza:
        sudo systemctl restart google-cloud-ops-agent
        
      2. Per verificare che l'agente sia stato riavviato, esegui il seguente comando e verifica che i componenti "Agente Metriche" e "Agente Logging" siano stati avviati:
        sudo systemctl status "google-cloud-ops-agent*"
        

    Genera traffico

    Per generare traffico verso il tuo server web Apache, segui questi passaggi:

    1. Vai al terminale SSH per l'istanza VM. Se non hai un terminale aperto, procedi nel seguente modo:

      1. Nella Google Cloud console, vai alla pagina Istanze VM.

        Vai a Istanze VM

        Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Compute Engine.

      2. Individua la nuova VM e fai clic su SSH.

    2. Nel terminale SSH, esegui il seguente comando, che genera richieste al tuo server web Apache:

      timeout 120 bash -c -- 'while true; do curl localhost; sleep $((RANDOM % 4)) ; done'
    3. Attendi due minuti affinché il prompt dei comandi venga restituito o il terminale venga chiuso. Durante l'esecuzione del comando, il testo HTML viene visualizzato nel terminale.

    Visualizza le metriche Apache

    Per visualizzare la dashboard Panoramica di Apache, che viene creata automaticamente, procedi nel seguente modo:

    1. Nella Google Cloud console, vai alla pagina  Dashboard:

      Vai a Dashboard

      Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.

    2. Nel riquadro Le mie dashboard, seleziona la dashboard Panoramica di Apache dall'elenco.

      Esempio della dashboard Panoramica di Apache.

    Hai configurato Ops Agent per raccogliere log e metriche dal server web Apache e hai visualizzato le metriche. Il passaggio successivo consiste nel creare un criterio di avviso in modo da ricevere una notifica quando il carico sul server web Apache supera una soglia.

    Crea un canale di notifica via email

    Prima di creare un criterio di avviso, configura i canali di notifica che vuoi che il criterio di avviso utilizzi. Cloud Monitoring supporta molti tipi diversi di canali di notifica, tra cui email, Slack, PagerDuty e Pub/Sub. Per saperne di più, consulta la pagina Creare e gestire i canali di notifica. Per ricevere notifiche via email, segui questi passaggi:
    1. Nella Google Cloud console, vai alla pagina  Avvisi:

      Vai ad Avvisi

      Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.

    2. Nella barra degli strumenti, fai clic su Modifica canali di notifica.
    3. Nella pagina Canali di notifica, scorri fino a Email e fai clic su Aggiungi nuovo.
    4. Inserisci il tuo indirizzo email e un nome visualizzato come My email, quindi fai clic su Salva.

    Crea un criterio di avviso

    In questa sezione creerai un criterio di avviso per ricevere una notifica quando il traffico verso il tuo server web Apache supera una soglia definita:

    1. Nella Google Cloud console, vai alla pagina  Avvisi:

      Vai ad Avvisi

      Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.

    2. Fai clic su Crea criterio.
    3. Seleziona le serie temporali da monitorare:

      1. Fai clic su Seleziona una metrica e seleziona Istanza VM.
      2. Nell'elenco Categorie di metriche attive, seleziona Apache.
      3. Nell'elenco Metriche attive, seleziona workload/apache.traffic.
      4. Fai clic su Applica.

      Viene visualizzato il grafico relativo al traffico Apache.

    4. Passa ai campi Configura trigger, quindi imposta il campo Valore soglia su 1500.

      Il grafico mostra la soglia sotto forma di linea tratteggiata. Assicurati che la linea tratteggiata sia molto inferiore al livello di traffico di picco.

    5. Passa ai campi Notifiche e nome, quindi utilizza il menu Canali di notifica per selezionare il tuo indirizzo email.

    6. Come nome del criterio, inserisci Apache traffic above threshold.

    7. Passa ai campi Rivedi avviso, esamina il criterio di avviso e fai clic su Crea criterio.

    Esegui il test del criterio di avviso

    Per eseguire il test del criterio di avviso, genera del traffico che supera la soglia:

    1. Vai al terminale SSH per l'istanza VM. Se non hai un terminale aperto, procedi nel seguente modo:

      1. Nella Google Cloud console, vai alla pagina Istanze VM.

        Vai a Istanze VM

        Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Compute Engine.

      2. Individua la nuova VM e fai clic su SSH.

    2. Nel terminale SSH, esegui il seguente comando, che genera richieste al tuo server web Apache:

      timeout 120 bash -c -- 'while true; do curl localhost; sleep $((RANDOM % 4)) ; done'
    3. Attendi due minuti affinché il prompt dei comandi venga restituito o il terminale venga chiuso. Durante l'esecuzione del comando, il testo HTML viene visualizzato nel terminale.
    4. Quando viene restituito il prompt dei comandi, controlla se nella tua email è presente un messaggio la cui riga dell'oggetto inizia con [ALERT].

      Se non vedi un'email, esamina il grafico sul criterio di avviso per verificare che il livello di traffico abbia superato la soglia. Potresti dover eseguire di nuovo il comando precedente. In caso contrario, attendi un paio di minuti per il recapito dell'email.

      La notifica fornisce un riepilogo della criterio di avviso e un link a un incidente. Ogni incidente contiene un record dell'errore e questi sono in genere utili per la risoluzione dei problemi.

      Notifica via email per il criterio di avviso sul traffico Apache.

    Hai configurato Ops Agent per raccogliere log e metriche dal server web Apache, ma hai visualizzato solo le metriche. Per informazioni su come visualizzare i log del server web Apache, consulta la guida rapida Visualizzare i log del server web Apache.

Esegui la pulizia

Per evitare che al tuo account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questa pagina, segui questi passaggi.

Se hai creato un nuovo progetto, ma non ne hai più bisogno, elimina il progetto.

Se hai utilizzato un progetto esistente:

  1. Se hai creato una VM, eliminala:

    1. In the Google Cloud console, go to the VM instances page.

      Go to VM instances

    2. Select the checkbox for the instance that you want to delete.
    3. To delete the instance, click More actions, click Delete, and then follow the instructions.
  2. Elimina il criterio di avviso che hai creato:

    1. Nella Google Cloud console, vai alla pagina  Avvisi:

      Vai ad Avvisi

      Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.

    2. Seleziona il criterio di avviso che hai creato, quindi fai clic su Elimina.

Passaggi successivi