Terraform 0.11

google_compute_backend_service




terraform

google_compute_backend_service

एक बैकेंड सेवा आभासी मशीनों के एक समूह को परिभाषित करती है जो लोड संतुलन के लिए यातायात का काम करेगी। अधिक जानकारी के लिए आधिकारिक दस्तावेज और API

आंतरिक लोड संतुलन के लिए, एक google_compute_region_backend_service उपयोग करें।

उदाहरण उपयोग

resource "google_compute_backend_service" "website" {
  name        = "my-backend"
  description = "Our company website"
  port_name   = "http"
  protocol    = "HTTP"
  timeout_sec = 10
  enable_cdn  = false

  backend {
    group = "${google_compute_instance_group_manager.webservers.instance_group}"
  }

  health_checks = ["${google_compute_http_health_check.default.self_link}"]
}

resource "google_compute_instance_group_manager" "webservers" {
  name               = "my-webservers"
  instance_template  = "${google_compute_instance_template.webserver.self_link}"
  base_instance_name = "webserver"
  zone               = "us-central1-f"
  target_size        = 1
}

resource "google_compute_instance_template" "webserver" {
  name         = "standard-webserver"
  machine_type = "n1-standard-1"

  network_interface {
    network = "default"
  }

  disk {
    source_image = "debian-cloud/debian-8"
    auto_delete  = true
    boot         = true
  }
}

resource "google_compute_http_health_check" "default" {
  name               = "test"
  request_path       = "/"
  check_interval_sec = 1
  timeout_sec        = 1
}

तर्क संदर्भ

निम्नलिखित तर्क समर्थित हैं:

  • name - (आवश्यक) बैकएंड सेवा का नाम।

  • health_checks - (आवश्यक) बैकएंड सेवा के स्वास्थ्य की जाँच के लिए HTTP / HTTPS स्वास्थ्य जाँचों की सूची निर्दिष्ट करता है। वर्तमान में अधिक से अधिक एक स्वास्थ्य जांच को निर्दिष्ट किया जा सकता है, और एक स्वास्थ्य जांच की आवश्यकता होती है।

  • backend - (वैकल्पिक) इस बैकएंड सर्विस की सेवा करने वाले बैकेंड की सूची। संरचना नीचे प्रलेखित है।

  • iap - (वैकल्पिक) पहचान-जागरूक प्रॉक्सी के लिए विशिष्टता। निर्दिष्ट नहीं होने पर अक्षम। संरचना नीचे प्रलेखित है।

  • cdn_policy - (वैकल्पिक) इस BackendService के लिए क्लाउड CDN कॉन्फ़िगरेशन। संरचना नीचे प्रलेखित है।

  • connection_draining_timeout_sec - (वैकल्पिक) वह समय जिसके लिए इंस्टेंस को सूखा दिया जाएगा (नए कनेक्शन स्वीकार नहीं करते हैं, लेकिन फिर भी आरंभ करने के लिए काम करते हैं)। 300 लिए चूक।

  • custom_request_headers - (वैकल्पिक, Beta ) हेडर जो HTTP / S लोड बैलेंसर को अनुमानित अनुरोधों में जोड़ना चाहिए। विवरण के लिए guide देखें।

  • description - (वैकल्पिक) बैकएंड सेवा के लिए पाठ्य विवरण।

  • enable_cdn - (वैकल्पिक) बैकएंड सेवा पर क्लाउड CDN को सक्षम करने या न करने के लिए।

  • port_name - (वैकल्पिक) एक सेवा का नाम जो इस बैकएंड में एक उदाहरण समूह में जोड़ा गया है। विवरण के लिए संबंधित डॉक्स देखें। Http के लिए चूक।

  • project - (वैकल्पिक) उस परियोजना की आईडी जिसमें संसाधन है। यदि यह प्रदान नहीं किया जाता है, तो प्रदाता परियोजना का उपयोग किया जाता है।

  • protocol - (वैकल्पिक) आने वाले अनुरोधों के लिए प्रोटोकॉल। HTTP चूक।

  • security_policy - (वैकल्पिक, Beta ) बैकएंड सेवा में जोड़ने के लिए एक सुरक्षा नीति का नाम या URI।

  • session_affinity - (वैकल्पिक) लोड कैसे वितरित करें। विकल्प NONE (कोई आत्मीयता), CLIENT_IP (स्रोत / भाग्य पते / पोर्ट का हैश), और GENERATED_COOKIE (जनरेट किए गए सत्र कुकी का उपयोग करके लोड वितरित करें)।

  • timeout_sec - (वैकल्पिक) अनुरोध विफल होने से पहले अनुरोध का जवाब देने के लिए बैकएंड की प्रतीक्षा करने के लिए सेकंड की संख्या। 30 कमी।

backend ब्लॉक का समर्थन करता है:

  • group - (आवश्यक) एक इंजन इंजन उदाहरण समूह ( google_compute_instance_group_manager.xyz.instance_group ) का नाम या URI जो ट्रैफ़िक प्राप्त कर सकते हैं।

  • balancing_mode - (वैकल्पिक) संतुलन लोड करने की रणनीति को परिभाषित करता है। उपयोगिता के लिए चूक

  • capacity_scaler - (ऑप्शनल) रेंज में एक फ्लोट [0, 1.0] जो समूह के लिए अधिकतम मापदंडों को मापता है (जैसे, अधिकतम दर)। 0.0 का मान समूह में भेजे जाने वाले अनुरोधों का कोई कारण नहीं होगा (यानी, यह एक सूखा अवस्था में समूह को जोड़ता है)। डिफ़ॉल्ट 1.0 है।

  • description - (वैकल्पिक) बैकएंड के लिए पाठ्य विवरण।

  • max_rate - (वैकल्पिक) अधिकतम अनुरोध प्रति सेकंड (RPS) जिसे समूह संभाल सकता है।

  • max_rate_per_instance - (वैकल्पिक) प्रति सेकंड (RPS) अधिकतम प्रति-आवृत्ति अनुरोध।

  • max_connections - (वैकल्पिक) समूह के लिए एक साथ कनेक्शन की अधिकतम संख्या। कनेक्शन या संघटन संतुलन साधनों के साथ प्रयोग किया जा सकता है। कनेक्शन मोड के लिए, या तो अधिकतम कनेक्शंस या मैक्सकनेक्टसपर्सइन्स्टारेंस सेट किया जाना चाहिए।

  • max_connections_per_instance - (वैकल्पिक) एक साथ बैकएंड उदाहरण की अधिकतम संख्या एक साथ संभाल सकती है। इसका उपयोग समूह की क्षमता की गणना करने के लिए किया जाता है। कनेक्शन या संघटन संतुलन साधनों में इस्तेमाल किया जा सकता है। कनेक्शन मोड के लिए, या तो अधिकतम कनेक्शंस या मैक्सकनेक्टसपर्सइन्स्टारेंस सेट किया जाना चाहिए।

  • max_utilization - (वैकल्पिक) समूह के लिए लक्ष्य CPU उपयोग सीमा में एक फ्लोट के रूप में [0.0, 1.0]। यह ध्वज केवल तब प्रदान किया जा सकता है जब संतुलन मोड का UTILIZATION । डिफाल्ट्स टू 0.8

cdn_policy ब्लॉक का समर्थन करता है:

  • cache_key_policy - (वैकल्पिक) CdnPolicy के लिए CacheKeyPolicy। संरचना नीचे प्रलेखित है।

cache_key_policy ब्लॉक का समर्थन करता है:

  • include_host - (वैकल्पिक) यदि सही है, तो अलग-अलग मेजबानों के अनुरोध अलग से कैश किए जाएंगे।

  • include_protocol - (वैकल्पिक) यदि सही है, तो http और https अनुरोध अलग से कैश किए जाएंगे।

  • include_query_string - (वैकल्पिक) यदि सही है, तो क्वेरी कुंजी में क्वेरी स्ट्रिंग मानकों को query_string_whitelist और query_string_blacklist अनुसार शामिल करें। यदि न तो सेट किया गया है, तो पूरे क्वेरी स्ट्रिंग को शामिल किया जाएगा। यदि गलत है, तो क्वेरी स्ट्रिंग को पूरी तरह से कैश कुंजी से बाहर रखा जाएगा।

  • query_string_blacklist - (वैकल्पिक) कैश कुंजियों में बाहर करने के लिए क्वेरी स्ट्रिंग मापदंडों के नाम। अन्य सभी मापदंडों को शामिल किया जाएगा। या तो query_string_whitelist या query_string_blacklist निर्दिष्ट करें, दोनों नहीं। 'और' और '=' प्रतिशत एन्कोडेड होगा और इसे सीमांकक नहीं माना जाएगा।

  • query_string_whitelist - (वैकल्पिक) कैश स्ट्रिंग कुंजियों में शामिल करने के लिए क्वेरी स्ट्रिंग मापदंडों के नाम। अन्य सभी मापदंडों को बाहर रखा जाएगा। या तो query_string_whitelist या query_string_blacklist निर्दिष्ट करें, दोनों नहीं। 'और' और '=' प्रतिशत एन्कोडेड होगा और इसे सीमांकक नहीं माना जाएगा।

iap ब्लॉक का समर्थन करता है:

  • oauth2_client_id - (आवश्यक) OAuth 2.0 के साथ उपयोग के लिए क्लाइंट आईडी।

  • oauth2_client_secret - (आवश्यक) OAuth 2.0 के साथ उपयोग के लिए ग्राहक रहस्य।

संदर्भ संदर्भित करता है

ऊपर सूचीबद्ध तर्कों के अलावा, निम्नलिखित गणना की गई विशेषताएँ निर्यात की जाती हैं:

  • fingerprint - बैकएंड सेवा का फिंगरप्रिंट।

  • self_link - निर्मित संसाधन का URI।

आयात

name का उपयोग करके बैकेंड सेवाओं को आयात किया जा सकता है, जैसे

$ terraform import google_compute_backend_service.website my-backend