agente operativo

+

Architettura

Ops Agent crea una macchina virtuale e installa l'agente per l'integrazione con i servizi di monitoraggio e logging. Utilizza:

  • Compute Engine
  • Monitoraggio
  • Logging

L'esempio configura una singola macchina virtuale semplice e la collega per generare report in Logging.


Inizia

Fai clic sul seguente link per una copia del codice sorgente in Cloud Shell. Una volta lì, un singolo comando avvierà una copia funzionante dell'applicazione nel tuo progetto.

Apri in Cloud Shell

Visualizza il codice sorgente su GitHub


Componenti di Ops Agent

L'architettura di Ops Agent utilizza diversi prodotti. Di seguito sono elencati i componenti, insieme a ulteriori informazioni su di essi, inclusi link a video correlati, documentazione del prodotto e walkthrough interattivi.
Video Documenti Procedure dettagliate
Compute Engine Compute Engine è la tecnologia virtuale di Google Cloud. Con questo strumento puoi avviare molte configurazioni diverse di VM per adattarle alle tue esigenze di calcolo.
Cloud Monitoring Cloud Monitoring offre visibilità su prestazioni, disponibilità e integrità delle tue applicazioni e della tua infrastruttura
Cloud Logging Cloud Logging fornisce una gestione dei log completamente gestita e in tempo reale con archiviazione, ricerca, analisi e avvisi nell'ordine degli exabyte.

Script

Lo script di installazione utilizza un file eseguibile scritto in go e gli strumenti Terraform CLI per prendere un progetto vuoto e installarvi l'applicazione. L'output deve essere un'applicazione funzionante e un URL per l'indirizzo IP del bilanciamento del carico.

./main.tf

Attiva i servizi

I servizi Google Cloud sono disabilitati in un progetto per impostazione predefinita. Per utilizzare una qualsiasi delle soluzioni riportate di seguito, dobbiamo attivare quanto segue:

  • Compute Engine: macchine virtuali e reti
variable "gcp_service_list" {
    description = "The list of apis necessary for the project"
    type        = list(string)
    default = [
        "compute.googleapis.com",
    ]
}

resource "google_project_service" "all" {
  for_each                   = toset(var.gcp_service_list)
  project                    = var.project_number
  service                    = each.key
  disable_dependent_services = false
  disable_on_destroy         = false
}

Creare una macchina virtuale

Crea una VM.

resource "google_compute_instance" "default" {
  project      = var.project_id
  name         = "${var.basename}-instance"
  machine_type = "f1-micro"
  zone         = var.zone

  boot_disk {
    initialize_params {
      image = "centos-cloud/centos-8-v20210817"
    }
  }
  labels = {
    env        = "prod"
    app        = "myproduct"
    created_by = "terraform"
  }

  network_interface {
    network = "default"

    access_config {
      // Include this section to give the VM an external ip address
    }
  }
  service_account {
    // Google recommends custom service accounts that have cloud-platform scope and permissions granted via IAM Roles.
    // This non production example uses the default compute service account.
    email  = local.sacompute
    scopes = ["cloud-platform"]
  }
}

Installa Ops Agent

Ops Agent è l'agente principale per la raccolta dei dati di telemetria dalle istanze Compute Engine. Verrà mostrato come installarlo utilizzando Terraform.

module "agent_policy" {
    source  = "terraform-google-modules/cloud-operations/google//modules/agent-policy"
    version = "~> 0.1.0"
    
    project_id = var.project_id
    policy_id  = "ops-agents-example-policy"
    agent_rules = [
        {
        type               = "ops-agent"
        version            = "current-major"
        package_state      = "installed"
        enable_autoupgrade = true
        },
    ]
    group_labels = [
        {
        env        = "prod"
        app        = "myproduct"
        created_by = "terraform"
        }
    ]
    
    os_types = [
        {
        short_name = "centos"
        version    = "8"
        },
    ]
}

Conclusione

Al termine dell'esecuzione, dovresti avere una VM configurata correttamente per registrare gli eventi in Google Cloud Logging. Inoltre, devi disporre di tutto il codice per modificare o estendere questa soluzione in base al tuo ambiente.