Terraform 0.11

google_sql_database_instance




terraform

google_sql_database_instance

एक नया Google SQL डेटाबेस इंस्टेंस बनाता है। अधिक जानकारी के लिए, आधिकारिक दस्तावेज या JSON एपीआई देखें

उदाहरण उपयोग

SQL फर्स्ट जनरेशन

resource "google_sql_database_instance" "master" {
  name = "master-instance"
  database_version = "MYSQL_5_6"
  # First-generation instance regions are not the conventional
  # Google Compute Engine regions. See argument reference below.
  region = "us-central"

  settings {
    tier = "D0"
  }
}

SQL दूसरी पीढ़ी

resource "google_sql_database_instance" "master" {
  name = "master-instance"
  database_version = "POSTGRES_9_6"
  region = "us-central1"

  settings {
    # Second-generation instance tiers are based on the machine
    # type. See argument reference below.
    tier = "db-f1-micro"
  }
}

तर्क संदर्भ

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

  • region - (आवश्यक) वह क्षेत्र जिस पर उदाहरण दिया जाएगा। ध्यान दें, पहली पीढ़ी का क्लाउड SQL उदाहरण क्षेत्र Google कंप्यूट इंजन (GCE) क्षेत्रों के साथ पंक्तिबद्ध नहीं है, और क्लाउड SQL सभी क्षेत्रों में उपलब्ध नहीं है - किसी एक में से चुनें here सूचीबद्ध विकल्प। इस संसाधन का उपयोग करने के लिए एक वैध क्षेत्र प्रदान किया जाना चाहिए। यदि कोई क्षेत्र संसाधन परिभाषा में प्रदान नहीं किया गया है, तो इसके बजाय प्रदाता क्षेत्र का उपयोग किया जाएगा, लेकिन यह सभी पहली-पीढ़ी के उदाहरणों के लिए और दूसरी पीढ़ी के उदाहरणों के लिए एक आवेदन-समय की त्रुटि होगी यदि प्रदाता क्षेत्र क्लाउड SQL के साथ समर्थित नहीं है । यदि आप इस संसाधन के लिए region तर्क प्रदान नहीं करने का चयन करते हैं, तो सुनिश्चित करें कि आप इसे समझते हैं।

  • settings - (आवश्यक) डेटाबेस के लिए उपयोग करने के लिए सेटिंग्स। कॉन्फ़िगरेशन नीचे विस्तृत है।

  • database_version - (वैकल्पिक, डिफ़ॉल्ट: MYSQL_5_6 ) उपयोग करने के लिए MySQL संस्करण। दूसरी पीढ़ी के उदाहरणों के लिए MYSQL_5_6 , MYSQL_5_7 या MYSQL_5_5 या पहली पीढ़ी के उदाहरणों के लिए MYSQL_5_5 या MYSQL_5_6 । अधिक जानकारी के लिए दूसरी पीढ़ी की क्षमताएं देखें। POSTGRES_9_6 समर्थन Beta

  • name - (वैकल्पिक, संगणित) उदाहरण का नाम। यदि नाम रिक्त छोड़ दिया जाता है, तो Terraform बेतरतीब ढंग से एक उत्पन्न करेगा जब उदाहरण पहली बार बनाया जाता है। ऐसा इसलिए किया जाता है क्योंकि एक नाम का उपयोग करने के बाद, इसे एक सप्ताह तक उपयोग नहीं किया जा सकता है।

  • master_instance_name - (वैकल्पिक) उदाहरण का नाम जो प्रतिकृति सेटअप में मास्टर के रूप में कार्य करेगा। ध्यान दें, इसके लिए मास्टर के पास binary_log_enabled सेट, साथ ही मौजूदा बैकअप होना आवश्यक है।

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

  • replica_configuration - (वैकल्पिक) प्रतिकृति के लिए कॉन्फ़िगरेशन। कॉन्फ़िगरेशन नीचे विस्तृत है।

आवश्यक settings ब्लॉक का समर्थन करता है:

  • tier - (आवश्यक) मशीन tier (पहली पीढ़ी) या प्रकार (दूसरी पीढ़ी) का उपयोग करने के लिए। अधिक विवरण और समर्थित संस्करणों के लिए tiers देखें। Postgres केवल साझा-कोर मशीन प्रकारों जैसे db-f1-micro , और कस्टम मशीन प्रकार जैसे db-custom-2-13312 कस्टम मशीन प्रकार निर्दिष्ट करने के बारे में जानने के लिए कस्टम मशीन प्रकार दस्तावेज़ीकरण देखें।

  • activation_policy - (वैकल्पिक) यह तब निर्दिष्ट करता है जब उदाहरण सक्रिय होना चाहिए। या तो ALWAYS हो सकता है, NEVER या ON_DEMAND

  • authorized_gae_applications - (वैकल्पिक) Google ऐप इंजन (जीएई) प्रोजेक्ट नामों की एक सूची जो इस उदाहरण तक पहुंचने की अनुमति है।

  • availability_type - (वैकल्पिक) यह निर्दिष्ट करता है कि क्या उच्च उपलब्धता ( REGIONAL ) या सिंगल ज़ोन ( ZONAL ) के लिए एक पोस्टग्रेक्यूएल उदाहरण स्थापित किया जाना चाहिए।

  • crash_safe_replication - (वैकल्पिक) उदाहरणों को पढ़ने के लिए विशिष्ट, इंगित करता है कि क्रैश-सुरक्षित प्रतिकृति ध्वज सक्षम होने पर।

  • disk_autoresize - (वैकल्पिक, दूसरी पीढ़ी, डिफ़ॉल्ट: true ) कॉन्फ़िगरेशन स्वचालित रूप से भंडारण आकार बढ़ाने के लिए।

  • disk_size - (वैकल्पिक, दूसरी पीढ़ी, डिफ़ॉल्ट: 10 ) जीबी में डेटा डिस्क का आकार। किसी रनिंग इंस्टेंस का आकार कम नहीं किया जा सकता, लेकिन बढ़ाया जा सकता है।

  • disk_type - (वैकल्पिक, दूसरी पीढ़ी, डिफ़ॉल्ट: PD_SSD ) डेटा डिस्क का प्रकार: PD_SSD या PD_HDD।

  • pricing_plan - (वैकल्पिक, पहली पीढ़ी) इस उदाहरण के लिए मूल्य निर्धारण योजना, PER_USE या PACKAGE एक हो सकती है।

  • replication_type - (वैकल्पिक) इस उदाहरण के लिए प्रतिकृति प्रकार, ASYNCHRONOUS या SYNCHRONOUS एक हो सकता है।

  • user_labels - (वैकल्पिक) उदाहरण के लिए असाइन करने के लिए कुंजी / मान उपयोगकर्ता के जोड़े का एक सेट।

वैकल्पिक settings.database_flags .atabase_flags सबलिस्ट का समर्थन करता है:

  • name - (वैकल्पिक) झंडे का नाम।

  • value - (वैकल्पिक) ध्वज का मूल्य।

वैकल्पिक settings.backup_configuration .backup_configuration सबब्लॉक का समर्थन करता है:

  • binary_log_enabled - (वैकल्पिक) बाइनरी लॉगिंग सक्षम होने पर सही। यदि logging झूठी है, तो यह भी होना चाहिए।

  • enabled - (वैकल्पिक) यदि बैकअप कॉन्फ़िगरेशन सक्षम है तो सही है।

  • start_time - (वैकल्पिक) HH:MM प्रारूप समय इंगित करता है कि बैकअप कॉन्फ़िगरेशन कब शुरू होता है।

वैकल्पिक settings.ip_configuration .ip_configuration सबब्लॉक समर्थन करता है:

  • ipv4_enabled - (वैकल्पिक) सही अगर उदाहरण को IP पता सौंपा जाना चाहिए। IPv4 पता दूसरी पीढ़ी के उदाहरणों के लिए अक्षम नहीं किया जा सकता है।

  • require_ssl - (वैकल्पिक) सही है अगर mysqld IP से कनेक्ट होने वाले उपयोगकर्ताओं के लिए REQUIRE X509 डिफ़ॉल्ट होना चाहिए।

वैकल्पिक settings.ip_configuration.authorized_networks[] .ip_configuration.authorized_networks settings.ip_configuration.authorized_networks[] सबलिस्ट का समर्थन करता है:

  • expiration_time - (वैकल्पिक) RFC 3339 स्वरूपित दिनांक समय स्ट्रिंग इंगित करता है जब यह श्वेतसूची समाप्त हो जाती है।

  • name - (वैकल्पिक) इस श्वेतसूची प्रविष्टि के लिए एक नाम।

  • value - (वैकल्पिक) एक CIDR संकेतन IPv4 या IPv6 पता जो इस उदाहरण तक पहुँचने की अनुमति है। यहां तक ​​कि अगर अन्य दो गुण श्वेतसूची के सक्रिय होने के लिए नहीं हैं, तब भी सेट होना चाहिए।

वैकल्पिक settings.location_preference Location_preference सबब्लॉक का समर्थन करता है:

  • follow_gae_application - (वैकल्पिक) एक GAE एप्लिकेशन जिसका क्षेत्र में रहना है। इस उदाहरण के समान क्षेत्र में होना चाहिए।

  • zone - (वैकल्पिक) पसंदीदा गणना इंजन zone

दूसरी पीढ़ी के उदाहरणों के लिए वैकल्पिक settings.maintenance_window .aintain_window सबब्लॉक एक घंटे की रखरखाव विंडो की घोषणा करता है जब एक इंस्टेंस स्वचालित रूप से अपडेट लागू करने के लिए पुनः आरंभ कर सकता है। रखरखाव विंडो UTC समय में निर्दिष्ट है। यह समर्थन करता है:

  • day - (वैकल्पिक) सप्ताह का दिन ( 1-7 ), सोमवार से शुरू हो रहा है

  • hour - (वैकल्पिक) दिन का घंटे ( 0-23 ), day निर्धारित नहीं होने पर नजरअंदाज कर दिया

  • update_track - (वैकल्पिक) पहले ( canary ) या बाद में अपडेट प्राप्त करें ( stable )

वैकल्पिक replica_configuration block में काम करने के लिए master_instance_name सेट होना चाहिए, अपडेट नहीं किया जा सकता, और समर्थन करता है:

  • ca_certificate - (वैकल्पिक) विश्वसनीय CA के x509 प्रमाणपत्र का PEM प्रतिनिधित्व।

  • client_certificate - (वैकल्पिक) दास का x509 प्रमाणपत्र का पीईएम प्रतिनिधित्व।

  • client_key - (वैकल्पिक) दास की निजी कुंजी का पीईएम प्रतिनिधित्व। client_certificate में एन्कोडेड की संबंधित सार्वजनिक कुंजी।

  • connect_retry_interval - (वैकल्पिक, डिफ़ॉल्ट: 60) कनेक्ट connect_retry_interval बीच सेकंड की संख्या।

  • dump_file_path - (वैकल्पिक) जीसीएस में एक एसक्यूएल फ़ाइल के लिए पथ जहां से दास उदाहरण बनते हैं। प्रारूप gs://bucket/filename

  • failover_target - (वैकल्पिक) निर्दिष्ट करता है कि क्या प्रतिकृति विफल लक्ष्य है। यदि फ़ील्ड को सही पर सेट किया गया है तो प्रतिकृति को विफल प्रतिकृति के रूप में नामित किया जाएगा। यदि मास्टर उदाहरण विफल रहता है, तो प्रतिकृति उदाहरण को नए मास्टर उदाहरण के रूप में प्रचारित किया जाएगा।

  • master_heartbeat_period - (वैकल्पिक) एमएस में प्रतिकृति दिल की धड़कन के बीच का समय।

  • password - (वैकल्पिक) प्रतिकृति कनेक्शन के लिए पासवर्ड।

  • sslCipher - (वैकल्पिक) SSL एन्क्रिप्शन में उपयोग के लिए अनुमेय सिफर।

  • username - (वैकल्पिक) प्रतिकृति कनेक्शन के लिए उपयोगकर्ता नाम।

  • verify_server_certificate - (वैकल्पिक) सही है यदि मास्टर के सामान्य नाम का मूल्य SSL हैंडशेक के दौरान जांचा जाता है।

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

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

समय समाप्ति

google_sql_database_instance निम्नलिखित google_sql_database_instance कॉन्फ़िगरेशन विकल्प प्रदान करता है:

  • create - डिफ़ॉल्ट 10 मिनट है।
  • update - डिफ़ॉल्ट 10 मिनट है।
  • delete - डिफ़ॉल्ट 10 मिनट है।

आयात

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

$ terraform import google_sql_database_instance.master master-instance