Terraform 0.11

openstack_compute_secgroup_v2




terraform

openstack_compute_secgroup_v2

OpenStack के भीतर V2 सुरक्षा समूह संसाधन का प्रबंधन करता है।

कृपया ध्यान दें कि OpenStack Compute API के माध्यम से सुरक्षा समूहों का प्रबंधन किया गया है। जब तक आप एक पुराने OpenStack वातावरण का उपयोग नहीं कर रहे हैं, तब तक इसके बजाय openstack_networking_secgroup_v2 और openstack_networking_secgroup_rule_v2 संसाधनों का उपयोग करने की अनुशंसा की जाती है, जो OpenStack Networking API का उपयोग करता है।

उदाहरण उपयोग

resource "openstack_compute_secgroup_v2" "secgroup_1" {
  name        = "my_secgroup"
  description = "my security group"

  rule {
    from_port   = 22
    to_port     = 22
    ip_protocol = "tcp"
    cidr        = "0.0.0.0/0"
  }

  rule {
    from_port   = 80
    to_port     = 80
    ip_protocol = "tcp"
    cidr        = "0.0.0.0/0"
  }
}

तर्क संदर्भ

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

  • region - (वैकल्पिक) वह क्षेत्र जिसमें V2 कम्प्यूट क्लाइंट प्राप्त करना है। एक सुरक्षा समूह बनाने के लिए एक कम्प्यूट क्लाइंट की आवश्यकता होती है। यदि छोड़ दिया जाता है, तो प्रदाता के region तर्क का उपयोग किया जाता है। इसे बदलने से एक नया सुरक्षा समूह बनता है।

  • name - (आवश्यक) सुरक्षा समूह के लिए एक अनूठा नाम। इसे बदलने से किसी मौजूदा सुरक्षा समूह का name अपडेट होता है।

  • description - (आवश्यक) सुरक्षा समूह के लिए एक विवरण। इसे बदलने से मौजूदा सुरक्षा समूह का description अपडेट हो जाता है।

  • rule - (वैकल्पिक) सुरक्षा समूह के संचालन का वर्णन करने वाला नियम। नियम वस्तु संरचना नीचे प्रलेखित है। इसे बदलने से सुरक्षा समूह के नियम अपडेट हो जाते हैं। जैसा कि ऊपर के उदाहरण में दिखाया गया है, कई नियम ब्लॉकों का उपयोग किया जा सकता है।

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

  • from_port - (आवश्यक) एक पूर्णांक पोर्ट रेंज के निचले हिस्से को खोलने का प्रतिनिधित्व करता है। इसे बदलने से एक नया सुरक्षा समूह नियम बनता है।

  • to_port - (आवश्यक) खोलने के लिए पोर्ट रेंज के ऊपरी बाउंड का प्रतिनिधित्व करने वाला पूर्णांक। इसे बदलने से एक नया सुरक्षा समूह नियम बनता है।

  • ip_protocol - (आवश्यक) प्रोटोकॉल प्रकार जिसे अनुमति दी जाएगी। इसे बदलने से एक नया सुरक्षा समूह नियम बनता है।

  • cidr - (वैकल्पिक) आवश्यक यदि from_group_id या self रिक्त है। IP श्रेणी जो सुरक्षा समूह के लिए नेटवर्क ट्रैफ़िक का स्रोत होगी। सभी IP पते की अनुमति देने के लिए 0.0.0.0/0 का उपयोग करें। इसे बदलने से एक नया सुरक्षा समूह नियम बनता है। from_group_id या self के साथ जोड़ा नहीं जा सकता।

  • from_group_id - (वैकल्पिक) आवश्यक यदि cidr या self रिक्त है। एक समूह की आईडी जिसमें से माता-पिता समूह को ट्रैफ़िक अग्रेषित करना है। इसे बदलने से एक नया सुरक्षा समूह नियम बनता है। cidr या self के साथ जोड़ा नहीं जा सकता।

  • self - (वैकल्पिक) आवश्यक है यदि cidr और from_group_id खाली है। यदि सही है, तो सुरक्षा समूह को इस अंतर्ग्रहण नियम के स्रोत के रूप में जोड़ा जाएगा। cidr या from_group_id के साथ जोड़ा नहीं जा सकता।

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

निम्नलिखित विशेषताएँ निर्यात की जाती हैं:

  • region - उपर्युक्त तर्क देखें।
  • name - उपर्युक्त तर्क देखें।
  • description - उपर्युक्त तर्क देखें।
  • rule - उपर्युक्त तर्क देखें।

टिप्पणियाँ

ICMP नियम

ICMP को ip_protocol रूप में उपयोग करते ip_protocol , from_port ICMP प्रकार सेट करता है और to_port ICMP कोड सेट करता है। सभी ICMP प्रकारों को अनुमति देने के लिए, प्रत्येक मान को -1 सेट करें, जैसे:

rule {
  from_port = -1
  to_port = -1
  ip_protocol = "icmp"
  cidr = "0.0.0.0/0"
}

ICMP प्रकार और कोड की एक सूची here पाई जा सकती here

सुरक्षा समूह को संदर्भित करना

कॉन्फ़िगरेशन में सुरक्षा समूह को संदर्भित करते समय (उदाहरण के लिए, एक कॉन्फ़िगरेशन एक नया सुरक्षा समूह बनाता है और फिर उसे उसी कॉन्फ़िगरेशन में बनाए जा रहे इंस्टेंस पर लागू करने की आवश्यकता होती है), वर्तमान में नाम से सुरक्षा समूह को संदर्भित करने की अनुशंसा की जाती है आईडी, इस तरह:

resource "openstack_compute_instance_v2" "test-server" {
  name            = "tf-test"
  image_id        = "ad091b52-742f-469e-8f3c-fd81cadf0743"
  flavor_id       = "3"
  key_pair        = "my_key_pair_name"
  security_groups = ["${openstack_compute_secgroup_v2.secgroup_1.name}"]
}

आयात

id का उपयोग करके सुरक्षा समूह आयात किए जा सकते हैं, जैसे

$ terraform import openstack_compute_secgroup_v2.my_secgroup 1bc30ee9-9d5b-4c30-bdd5-7f1e663f5edf