סוכן התפעול יוצר מכונה וירטואלית ומתקין את סוכן התפעול כדי לשלב עם שירותי Monitoring ו-Logging. הוא משתמש ב:
- Compute Engine
- מעקב
- רישום ביומן
בדוגמה הבאה מוגדרת מכונה וירטואלית פשוטה אחת שמחוברת ל-Logging כדי לדווח.
שנתחיל?
כדי להעתיק את קוד המקור ב-Cloud Shell, לוחצים על הקישור הבא. אחרי שמגיעים לשם, פקודה אחת תתחיל הרצה של עותק עובד של האפליקציה בפרויקט.
רכיבים של סוכן התפעול
ארכיטקטורת סוכן תפעול משתמשת בכמה מוצרים. ברשימה הבאה מפורטים הרכיבים, וגם מידע נוסף על הרכיבים, כולל קישורים לסרטונים קשורים, למסמכי מוצר ולמדריכים אינטראקטיביים.סקריפטים
סקריפט ההתקנה משתמש בקובץ הפעלה שנכתב ב-go ובכלים של Terraform CLI כדי לקחת פרויקט ריק ולהתקין בו את האפליקציה. הפלט צריך להיות אפליקציה פעילה וכתובת URL לכתובת ה-IP של איזון העומסים.
./main.tf
הפעלת שירותים
שירותי Google Cloud מושבתים בפרויקט כברירת מחדל. כדי להשתמש באחד מהפתרונות שמופיעים כאן, צריך להפעיל את האפשרויות הבאות:
- Compute Engine – מכונות וירטואליות ורשתות
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
}
יצירת מכונה וירטואלית
יוצר מכונה וירטואלית.
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"]
}
}
התקנת סוכן התפעול
סוכן התפעול הוא הסוכן העיקרי לאיסוף נתוני טלמטריה מהמכונות שלכם ב-Compute Engine. במאמר הזה נסביר איך להתקין אותו באמצעות 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"
},
]
}
סיכום
אחרי ההרצה, אמור להיות לכם מכונה וירטואלית שהוגדרה כראוי לרישום אירועים ב-Google Cloud Logging. בנוסף, צריך שיהיה לכם את כל הקוד לשינוי או להרחבה של הפתרון הזה כך שיתאים לסביבה שלכם.