Ops Agent crea una macchina virtuale e installa Ops Agent per l'integrazione con i servizi di Monitoring e Logging. Utilizza:
- Compute Engine
- Monitoraggio
- Logging
L'esempio configura una singola macchina virtuale semplice e la collega per generare il report a Logging.
Inizia
Fai clic sul link seguente a una copia del codice sorgente in Cloud Shell. Da lì, un singolo comando avvierà una copia funzionante dell'applicazione nel tuo progetto.
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 sui componenti, tra cui link a video correlati, documentazione del prodotto e procedure dettagliate interattive.Script
Lo script di installazione utilizza un eseguibile scritto in go
e negli strumenti dell'interfaccia a riga di comando di Terraform per acquisire un progetto vuoto e installare l'applicazione al suo interno. L'output deve essere un'applicazione funzionante e un URL per l'indirizzo IP di 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 qui riportate, dobbiamo attivare quanto segue:
- Compute Engine: macchine virtuali e networking
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. In questo modo ti verrà spiegato 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
Dopo l'esecuzione, ora dovresti avere una VM configurata correttamente per registrare gli eventi in Google Cloud Logging. Inoltre, devi disporre di tutto il codice da modificare o estendere questa soluzione in base al tuo ambiente.