आज हम हाशिकॉर्प टेराफॉर्म रेडिस एंटरप्राइज क्लाउड प्रदाता की उपलब्धता की घोषणा करते हुए प्रसन्न हैं। जबकि विकास दल निरंतर एकीकरण/निरंतर वितरण (CI/DC) जैसे अधिक से अधिक DevOps सिद्धांतों को अपनाते हैं, बुनियादी ढांचे को कोड के रूप में प्रबंधित करने की आवश्यकता किसी भी क्लाउड सेवा के लिए लगभग एक आवश्यक क्षमता बन गई है। कोड स्थान के रूप में बुनियादी ढांचे में एक प्रमुख उपकरण हाशिकॉर्प टेराफॉर्म है, जो किसी भी क्लाउड, बुनियादी ढांचे और सेवा के प्रावधान, अनुपालन और प्रबंधन के लिए अपने प्रदाताओं और मॉड्यूल क्लाउड इंफ्रास्ट्रक्चर ऑटोमेशन इकोसिस्टम के साथ प्रमुख क्लाउड प्रदाताओं और सेवाओं का समर्थन करता है।
टेराफॉर्म क्या है?
यदि आप परिचित नहीं हैं, तो टेराफॉर्म बुनियादी ढांचे को सुरक्षित और कुशलता से बनाने, बदलने और संस्करण बनाने के लिए एक उपकरण है, कोड के साथ सब कुछ प्रबंधित करता है। आपके एप्लिकेशन को चलाने के लिए आवश्यक घटकों का वर्णन करने के लिए कॉन्फ़िगरेशन फ़ाइलों का उपयोग किया जाता है। टेराफॉर्म लगभग किसी भी बुनियादी ढांचे के घटक का प्रबंधन कर सकता है, जिसमें नंगे धातु, वर्चुअल मशीन, क्लाउड इंस्टेंस और कई अन्य लोकप्रिय इंफ्रास्ट्रक्चर-ए-ए-सर्विसेज (आईएएएस) सेवाएं शामिल हैं। आपके एप्लिकेशन स्टैक के घटकों को टेराफॉर्म में संसाधनों के रूप में दर्शाया गया है। एक टेराफॉर्म प्रदाता प्रासंगिक संसाधन के एपीआई इंटरैक्शन को समझने और दुनिया के लिए संसाधन की विशेषताओं को उजागर करने के लिए जिम्मेदार है।
तो आज हम क्या घोषणा कर रहे हैं?
इस बढ़ती मांग को पूरा करने के लिए, रेडिस ने रेडिस एंटरप्राइज क्लाउड के लिए टेराफॉर्म प्रदाता विकसित किया है। हाशिकॉर्प टेराफॉर्म रेडिस एंटरप्राइज क्लाउड प्रदाता ग्राहकों को किसी भी क्लाउड प्रदाता पर कोड के रूप में रेडिस एंटरप्राइज क्लाउड सदस्यता, डेटाबेस और नेटवर्क पीयरिंग को आसानी से तैनात और प्रबंधित करने की अनुमति देता है।
त्वरित प्रारंभ
यह प्रदर्शित करने के लिए कि रेडिस एंटरप्राइज क्लाउड का टेराफॉर्म प्रदाता कैसे काम करता है और यह क्या कर सकता है, आइए दो डेटाबेस के साथ एक नमूना सदस्यता बनाएं, उनमें से एक RedisJSON मॉड्यूल का उपयोग कर रहा है।
पूर्वापेक्षाएँ:
- टेराफॉर्म स्थानीय रूप से स्थापित।
- एक रेडिस एंटरप्राइज क्लाउड खाता।
- आपके Redis Enterprise Cloud खाते में प्रोग्रामेटिक एक्सेस सक्षम है।
आइए अपने रेडिस एंटरप्राइज क्लाउड एपीआई कुंजियों को पर्यावरण चर के रूप में संग्रहीत करके शुरू करें:
<चिह्न>$ निर्यात REDISCLOUD_ACCESS_KEY=<आपकी एपीआई पहुंच कुंजी>चिह्न>
<चिह्न>$ निर्यात REDISCLOUD_SECRET_KEY=<आपकी एपीआई गुप्त कुंजी>चिह्न>
अब एक नया फोल्डर बनाते हैं और यहां दिखाई गई टेराफॉर्म एचसीएल फाइल को रखते हैं। फ़ाइल को कॉल करें rediscloud-tf-example.tf:
terraform {
required_providers {
rediscloud = {
source = "Redis/rediscloud"
version = "0.2.0"
}
}
}
# Provide your credit card details
data "rediscloud_payment_method" "card" {
card_type = "Visa"
last_four_numbers = "1234"
}
# Generates a random password for the database
resource "random_password" "passwords" {
count = 2
length = 20
upper = true
lower = true
number = true
special = false
}
resource "rediscloud_subscription" "example" {
name = "Demo"
payment_method_id = data.rediscloud_payment_method.card.id
memory_storage = "ram"
cloud_provider {
#Running in AWS on Redis resources
provider = "AWS"
cloud_account_id = 1
region {
region = "eu-west-1"
networking_deployment_cidr = "10.0.0.0/24"
preferred_availability_zones = ["eu-west-1a"]
}
}
database {
name = "redis-db"
protocol = "redis"
memory_limit_in_gb = 1
replication = true
data_persistence = "none"
throughput_measurement_by = "number-of-shards"
throughput_measurement_value = 2
password = random_password.passwords[0].result
}
database {
name = "db-json"
protocol = "redis"
memory_limit_in_gb = 1
replication = true
data_persistence = "aof-every-1-second"
module {
name = "RedisJSON"
}
throughput_measurement_by = "operations-per-second"
throughput_measurement_value = 10000
password = random_password.passwords[1].result
}
} अगला कदम इस कमांड को चलाकर टेराफॉर्म वातावरण को इनिशियलाइज़ करना है:
$ टेराफॉर्म init
परिणाम इस तरह होना चाहिए:
... Terraform has been successfully initialized! You may now begin working with Terraform. Try running "terraform plan" to see any changes that are required for your infrastructure. All Terraform commands should now work. ...
टेराफ़ॉर्म के सफलतापूर्वक आरंभ होने के बाद, टेराफ़ॉर्म को योजना बनाने के लिए निम्न कमांड चलाएँ:
$ टेराफॉर्म योजना
आउटपुट इस तरह दिखना चाहिए:
... Plan: 1 to add, 0 to change, 0 to destroy. ...
आइए अब टेराफॉर्म को अपना जादू चलाने दें और अपने डेटाबेस को व्यवस्थित करें:
$ टेराफॉर्म लागू
टेराफॉर्म लागू कमांड को एक बार समाप्त होने में कई मिनट लग सकते हैं, इसे ऐसा परिणाम देना चाहिए जो इस तरह दिखता है:
… rediscloud_subscription.example: Creation complete after 8m16s [id=103873] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. ...
जैसा कि आप देख सकते हैं, हमने अब दो नए डेटाबेस का प्रावधान किया है। आपको बस इतना करना है कि डेटाबेस के एंडपॉइंट्स को पकड़ना है और उन्हें अपने एप्लिकेशन में प्लग करना है। आप RedisInsight, GUI का उपयोग सुव्यवस्थित Redis अनुप्रयोग विकास के लिए भी कर सकते हैं, अपने डेटा को जोड़ने और एक्सप्लोर करने के लिए।
Redis Enterprise Cloud कंसोल नई सदस्यता और डेटाबेस प्रदर्शित करता है:
एक बार जब आप अपने डेटाबेस के साथ मज़े कर लेते हैं तो आप इस कमांड को चलाकर सब कुछ फाड़ सकते हैं:
<चिह्न>$ टेराफॉर्म नष्ट
आगे क्या है?
हम हाशिकॉर्प टेराफॉर्म रेडिस एंटरप्राइज क्लाउड प्रदाता की क्षमताओं का विस्तार करना जारी रखेंगे। यदि आपके पास कोई विचार या सुविधा है जो आप चाहते हैं कि हम प्रदाता में समर्थन करें या आपको कोई बग मिले, तो कृपया हमारे GitHub रिपॉजिटरी में एक समस्या खोलकर हमें बताएं। आप हमें pm.group@redis.com पर एक लाइन भी भेज सकते हैं।
उत्पादन उपयोग के मामलों के लिए, हम उपयोग करने की भी सलाह देते हैं, जो कि टेराफॉर्म के लिए हाशिकॉर्प की क्लाउड-आधारित पेशकश है। यह आपको आपकी कॉन्फ़िगरेशन फ़ाइल और स्रोत नियंत्रण के बाहर एक सुरक्षित वातावरण में क्रेडेंशियल संग्रहीत करने में सक्षम करेगा। टेराफॉर्म क्लाउड भी सहयोगी सुविधाओं के साथ आता है जैसे कि मुफ्त रिमोट स्टेट स्टोरेज, कस्टम वर्कस्पेस अनुमतियां, वर्जन-कंट्रोल सिस्टम इंटीग्रेशन, साथ ही पॉलिसी और कोड। आप terraform.io/cloud पर निःशुल्क साइन अप कर सकते हैं।